Narrowing Strategies for Arbitrary Canonical Rewrite Systems
نویسندگان
چکیده
Narrowing is a universal unification procedure for equational theories defined by a canonical term rewriting system. In its original form it is extremely inefficient. Therefore, many optimizations have been proposed during the last years. In this paper, we present the narrowing strategies for arbitrary canonical systems in a uniform framework and introduce the new narrowing strategy LSE narrowing. LSE narrowing is complete and improves all other strategies which are complete for arbitrary canonical systems. It is optimal in the sense that two different LSE narrowing derivations cannot generate the same narrowing substitution. Moreover, LSE narrowing computes only normalized narrowing substitutions.
منابع مشابه
Evaluation Strategies for Functional Logic Programming
Recent advances in the foundations and the implementations of functional logic programming languages originate from far-reaching results on narrowing evaluation strategies. Narrowing is a computation similar to rewriting which yields substitutions in addition to normal forms. In functional logic programming, the classes of rewrite systems to which narrowing is applied are, for the most part, su...
متن کاملParallel Evaluation Strategies for Functional Logic Languages
We introduce novel, sound, complete, and locally optimal evaluation strategies for functional logic programming languages. Our strategies combine, in a non-trivial way, two landmark techniques in this area: the computation of unifiers performed by needed narrowing in inductively sequential rewrite systems and the simultaneous reduction of a necessary set of redexes performed by rewriting in wea...
متن کاملComplete Strategies for Admissible-Graph Collapsing Narrowing
Narrowing constitutes the basis of the operational semantics of modern declarative languages which integrate functional and logic programming paradigms. Efficient implementations of these languages consider first-order terms as graphs. In this paper, we investigate narrowing in the setting of graph rewriting systems. We take the full advantage of graph structures by allowing maximal sharing of ...
متن کاملTyped Higher-Order Narrowing without Higher-Order Strategies
We describe a new approach to higher-order narrowing computations in a class of systems suitable for functional logic programming. Our approach is based on a translation of these systems into ordinary (£rst-order) rewrite systems and the subsequent application of conventional narrowing strategies. Our translation is an adaptation to narrowing of Warren’s translation, but unlike similar previous...
متن کاملComplete Strategies for Term Graph Narrowing
Narrowing is a method for solving equations in the equational theories of term rewriting systems. Unification and rewriting, the central operations in narrowing, are often implemented on graph-like data structures to exploit sharing of common subexpressions. In this paper, we study the completeness of narrowing in graph-based implementations. We show that the well-known condition for the comple...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Fundam. Inform.
دوره 24 شماره
صفحات -
تاریخ انتشار 1995